Skip to content

Conversation

@abelonogov-ld
Copy link
Contributor

@abelonogov-ld abelonogov-ld commented Jan 9, 2026

Requirements

Put completions of all public methods into main-thread.

  1. Solves inconsistency of completion on unexpected threads. (before some was on main and some not)
  2. Solves Obj-C compatibility
  3. Solves using library from Swift6 project

Related issues

(#419)

Describe the solution you've provided

Provide a clear and concise description of what you expect to happen.

Describe alternatives you've considered

Require customers wrap completions into sendable completions. T


Note

Main-thread completion dispatch

  • setOnline(_:completion:) now notifies completion on .main instead of a global queue
  • All identify variants wrap their completion callbacks in DispatchQueue.main.async
  • Deprecated identify(context: completion:) also dispatches completion on .main
  • start(config:context:completion:) and start(config:context:startWaitSeconds:completion:) now invoke provided completions on .main

This standardizes public API completion execution to the main thread across the SDK.

Written by Cursor Bugbot for commit c1ffd0b. This will update automatically on new commits. Configure here.

@abelonogov-ld abelonogov-ld requested a review from a team as a code owner January 9, 2026 05:47
@abelonogov-ld abelonogov-ld changed the title feat: put public completions into main-thread (makes it Swift6 compatible) feat!: put public completions into main-thread (makes it Swift6 compatible) Jan 15, 2026
@abelonogov-ld abelonogov-ld changed the base branch from v10 to v11 January 15, 2026 21:17
@abelonogov-ld abelonogov-ld merged commit e712fb1 into v11 Jan 15, 2026
5 checks passed
@abelonogov-ld abelonogov-ld deleted the andrey/main-thread-public-completions branch January 15, 2026 21:59
abelonogov-ld pushed a commit that referenced this pull request Jan 15, 2026
🤖 I have created a release *beep* *boop*
---


##
[11.0.0](10.1.0...11.0.0)
(2026-01-15)


### ⚠ BREAKING CHANGES

* put public completions into main-thread (makes it Swift6 compatible)
([#465](#465))

### Features

* put public completions into main-thread (makes it Swift6 compatible)
([#465](#465))
([e712fb1](e712fb1))

---
This PR was generated with [Release
Please](https://github.com/googleapis/release-please). See
[documentation](https://github.com/googleapis/release-please#release-please).

<!-- CURSOR_SUMMARY -->
---

> [!NOTE]
> Releases version 11.0.0 with a breaking change to execute public
completions on the main thread for Swift 6 compatibility.
> 
> - Updates versions to `11.0.0` across `.release-please-manifest.json`,
`LaunchDarkly.podspec`, `ReportingConsts.sdkVersion`, README dependency
snippets, and Xcode project settings
> - In Xcode project: bumps
`DYLIB_COMPATIBILITY_VERSION`/`DYLIB_CURRENT_VERSION` and
`MARKETING_VERSION` to `11.0.0`, and updates `FRAMEWORK_VERSION` from
`J` to `K`
> - Adds 11.0.0 release notes to `CHANGELOG.md`
> 
> <sup>Written by [Cursor
Bugbot](https://cursor.com/dashboard?tab=bugbot) for commit
0e5538a. This will update automatically
on new commits. Configure
[here](https://cursor.com/dashboard?tab=bugbot).</sup>
<!-- /CURSOR_SUMMARY -->

---------

Co-authored-by: github-actions[bot] <41898282+github-actions[bot]@users.noreply.github.com>
Co-authored-by: LaunchDarklyReleaseBot <[email protected]>
Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment

Labels

None yet

Projects

None yet

Development

Successfully merging this pull request may close these issues.

3 participants